package jp.dip.oyasirazu.study.javafx;
import javafx.fxml.FXMLLoader;
import javafx.scene.control.ListCell;
import javafx.scene.image.Image;
import javafx.scene.image.ImageView;
import javafx.scene.layout.HBox;
import javafx.scene.layout.Pane;
import javafx.scene.text.Text;
/**
* CustomCell
*/
public class CustomCell extends ListCell<CustomCellItem> {
@Override
public void updateItem(CustomCellItem item, boolean isEmpty) {
super.updateItem(item, isEmpty);
if (isEmpty || item == null) {
Pane p = new Pane();
setGraphic(p);
return;
}
try {
FXMLLoader loader = new FXMLLoader(getClass().getResource("/CustomCell.fxml"));
Pane root = loader.load();
CustomCellController c = loader.getController();
Image image = new Image(getClass().getResourceAsStream("/icon.png"));
c.icon.setImage(image);
c.text.setText(item.getName());
setGraphic(root);
} catch (Exception e) {
e.printStackTrace();
System.out.println("erroe!");
}
return;
}
}